package br.ebula.apl.bo;

import java.util.ArrayList;

import br.ebula.apl.bean.Bula;
import br.ebula.apl.constantes.CamposEB;
import br.ebula.apl.dao.DAOAlteraBula;
import br.ebula.apl.dto.DTOAlteraBula;

public class BOAlteraBula {

	public void alteraBula(DTOAlteraBula dto) {
		
		ArrayList<CamposEB> eb = new ArrayList<CamposEB>();

		if(validaDados(dto.getBula(),eb)){
			DAOAlteraBula dao = new DAOAlteraBula();
			dao.alteraBula(dto);
		} else{
			dto.setCampoEB(eb);
		}
		
	}

	private boolean validaDados(Bula b, ArrayList<CamposEB> eb) {
		
		if( ! verificaCampoInvalido(b.getCodigo() ) )
			eb.add(CamposEB.CODIGO);
		
		if( ! verificaCampoInvalido(b.getClasse()) )
			eb.add(CamposEB.CLASSE);

		if( ! verificaCampoInvalido(b.getNome()) )
			eb.add(CamposEB.NOME);
		
		if( ! verificaCampoInvalido(b.getPrincipioAtivo()) )
			eb.add(CamposEB.PRINCIPIO);
		
		if( ! verificaCampoInvalido(b.getSintomas()) )
			eb.add(CamposEB.SINTOMAS);
		
		if(eb.size()!=0)
			return false;
		return true;
	}
	
	private boolean verificaCampoInvalido(String campo){
		if( (campo==null) || (campo.equals("")) )
			return false;
		return true;
	}

	
}
